package com.example.demo01.Dao.webDao;


import com.example.demo01.Entity.webEntity.NVWeight;

import java.util.List;

public interface NVWeightDao {

    /**
     * 按照护理等级获取对应的服务次数，并计算权重
     * */
    public List<NVWeight> getNVWeightListByNurseLevel();

    /**
     * 按照护理等级获取对应的服务次数，并计算权重——格式化后的数据
     * */
    public List<List> getNVWeightListByNurseLevelFormat();

    /**
     * 按照护理等级获取对应的服务次数——时间限定
     * @param start 起始时间
     * @param end 终止时间
     * */
    public List<NVWeight> getNVWeightByNurseLevelTime(Long start,Long end);

    /**
     * 按照护理等级获取对应的服务次数——时间限定——格式化后的数据
     * @param start 起始时间
     * @param end 终止时间
     * */
    public List<List> getNVWeightByNurseLevelTimeFormat(Long start,Long end);


    /**
     * 按照省级划分
     * */
    public List<NVWeight> getNVWeightByProvinceCode();


    /**
     * 按照省级划分——时间限定
     * @param start 起始时间
     * @param end 终止时间
     * */
    public List<NVWeight> getNVWeightByProvinceCodeTime(Long start,Long end);

    /**
     * 按照省级划分——时间限定——格式化的结果
     * @param start 起始时间
     * @param end 终止时间
     * */
    public List<List> getNVWeightByProvinceCodeTimeFormat(Long start,Long end);

    /**
     * 按照省级划分——格式化的结果
     * */
    public List<List> getNVWeightByProvinceCodeFormat();

    /**
     * 按照市区划分
     * */
    public List<NVWeight> getNVWeightByCityCode();

    /**
     * 按照市区划分——时间限定
     * @param start 起始时间
     * @param end 终止时间
     * */
    public List<NVWeight> getNVWeightByCityCodeTime(Long start,Long end);

    /**
     * 按照市区划分——时间限定——格式化的结果
     * @param start 起始时间
     * @param end 终止时间
     * */
    public List<List> getNVWeightByCityCodeTimeFormat(Long start,Long end);

    /**
     * 按照市区划分——格式化的结果
     * */
    public List<List> getNVWeightByCityCodeFormat();

    /**
     * 按照县乡划分
     * */
    public List<NVWeight> getNVWeightByCountryCode();

    /**
     * 按照县乡划分——时间限定——格式化的结果
     * @param start 起始时间
     * @param end 终止时间
     * */
    public List<List> getNVWeightByCountryCodeTimeFormat(Long start,Long end);

    /**
     * 按照县乡划分——时间限定
     * @param start 起始时间
     * @param end 终止时间
     * */
    public List<NVWeight> getNVWeightByCountryCodeTime(Long start,Long end);

    /**
     * 按照县乡划分——格式化的结果
     * */
    public List<List> getNVWeightByCountryCodeFormat();


    /**
     * 根据idNum，按月份统计报警信息及其报警次数
     * @param idnum 身份证号
     * */
    public  List<NVWeight> getNVWeightByIdNumUnderMonth(String idnum);


}
